<template>
  <div class="app-container">
    <!--查询表单-->
<el-form :inline="true" class="demo-form-inline">
<el-form-item>
<el-input v-model="courseQuery.title" placeholder="课程的名称"/>
</el-form-item>
<el-form-item>
<el-select v-model="courseQuery.status" clearable  placeholder="课程的状态">
<el-option :value="'Normal'" label="已发布" />
<el-option :value="'Draft'" label="未发布"/>
</el-select>
</el-form-item>

<el-button type="primary" icon="el-icon-search" @click="getList()">查
询</el-button>
<el-button type="default" @click="resetData()">清空</el-button>
</el-form>
    <!-- 表格 -->
<el-table
:data="list"
border
fit
highlight-current-row>
<el-table-column label="序号" width="70" align="center">
<template slot-scope="scope">{{ (page - 1) * limit + scope.$index + 1 }}</template>
</el-table-column>
<el-table-column prop="title" label="名称" width="180" />
<el-table-column label="课程状态" width="80">
<template slot-scope="scope">{{ scope.row.status==="Draft"?'未发布':'已发布' }}</template>
</el-table-column>
<el-table-column prop="lessonNum" label="课时数" width="80"/>
<el-table-column prop="price" label="价格" width="160"/>
<el-table-column prop="viewCount" label="浏览数量" width="80" />
<el-table-column label="操作" width="470" align="center">
<template slot-scope="scope">
<router-link :to="'/course/info/'+scope.row.id">
<el-button type="primary" size="mini" icon="el-icon-edit">编辑课程的基本信息</el-button>
</router-link>
<router-link :to="'/course/chapter/'+scope.row.id">
<el-button type="primary" size="mini" icon="el-icon-edit">编辑课程大纲信息</el-button>
</router-link>
<el-button type="danger" size="mini" icon="el-icon-delete" @click="removeDataById(scope.row.id)">删除</el-button>
</template>
</el-table-column>
</el-table>
<!-- 分页 -->
<el-pagination :current-page="page" :page-size="limit" :total="total" style="padding: 30px 0; text-align: center;"
layout="total, prev, pager, next, jumper" @current-change="getList"/>
  </div>
</template>
<script>
import course from '@/api/edu/course'
export default {
  //写核心代码
  data() {
    //定义变量初始值
    return {
      list: null, //查询之后接口返回结合
      page: 1, //当前页
      limit: 10, //每页记录数
      courseQuery: {}, //条件封装对象
      total: 0,
    };
  },
  created() {
    //页面渲染之前执行,一般调用methods定义的方法
    this.getList();
  },
  methods: {
    //创建具体的方法,调用teacher.js定义的方法
    //讲师列表的方法
    getList(page = 1) {
      this.page = page;
      course
        .getCourseListPage(this.page, this.limit, this.courseQuery)
        .then((response) => {
          console.log(response)
          //请求成功
          //response接口返回的数据
          this.list = response.data.rows;
          this.total = response.data.total;
        });
    },
    //清空方法
    resetData(){
      //表单数据清空
      this.courseQuery={}
      //查询数据
      this.getList()
    },
    //删除讲师方法
    removeDataById(id){
        this.$confirm('此操作将永久删将是记录, 是否继续?', '提示', {
          confirmButtonText: '确定',
          cancelButtonText: '取消',
          type: 'warning'
        }).then(() => {
      course.deleteCourseAllMessage(id)
      .then(response=>{
        //提示信息
         this.$message({
            type: 'success',
            message: '删除成功!'
          });
        //回到列表页面
        this.getList()
      })
        })
    }
    
  },
};
</script>